<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>DbEnv::set_lk_tablesize()</title>
    <link rel="stylesheet" href="apiReference.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB C++ API Reference" />
    <link rel="up" href="lock.html" title="Chapter 7.  The DbLock Handle" />
    <link rel="prev" href="envset_lk_priority.html" title="DbEnv::set_lk_priority()" />
    <link rel="next" href="lockdetect.html" title="DbEnv::lock_detect()" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 11.2.5.3</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">DbEnv::set_lk_tablesize()</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="envset_lk_priority.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 7. 
                The DbLock Handle
        </th>
          <td width="20%" align="right"> <a accesskey="n" href="lockdetect.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="envset_lk_tablesize"></a>DbEnv::set_lk_tablesize()</h2>
          </div>
        </div>
      </div>
      <pre class="programlisting">#include &lt;db_cxx.h&gt;

int
DbEnv::set_lk_tablesize(u_int32_t tablesize); </pre>
      <p>
         Sets the number of buckets in the lock object
	 hash table in the Berkeley DB
         environment. The default value is estimated based on defaults,
         initial and (deprecated) maximum settings of the number of lock
         objects allocated. The maximum memory allocation is also
         considered.  The table is generally set to be close to the number
         of lock objects in the system to avoid collisions and delay in
         processing lock operations.
    </p>
      <p>
         The database environment's tablesize may also be configured using
         the environment's <a href="../../programmer_reference/env_db_config.html#env_db_config.DB_CONFIG" class="olink">DB_CONFIG</a> file. The syntax of the entry in
         that file is a single line with the string "set_lk_tablesize", one
         or more whitespace characters, and the size of the table. Because
         the <a href="../../programmer_reference/env_db_config.html#env_db_config.DB_CONFIG" class="olink">DB_CONFIG</a> file is read when the database environment is
         opened, it will silently overrule configuration done before that
         time.
    </p>
      <p>
         The <code class="methodname">DbEnv::set_lk_tablesize()</code> method configures a database
         environment, not only operations performed using the specified 
         <a class="link" href="env.html" title="Chapter 5.  The DbEnv Handle">DbEnv</a>  handle.
    </p>
      <p>
         The <code class="methodname">DbEnv::set_lk_tablesize()</code> method may not be called after the
         <a class="xref" href="envopen.html" title="DbEnv::open()">DbEnv::open()</a>  method is
         called. If the database environment already exists when 
         <a class="xref" href="envopen.html" title="DbEnv::open()">DbEnv::open()</a>  is called, the
         information specified to <code class="methodname">DbEnv::set_lk_tablesize()</code> will be ignored.
    </p>
      <p>
         The <code class="methodname">DbEnv::set_lk_tablesize()</code> <span>
            
            <span>
                method either returns a non-zero error value or throws an
                exception that encapsulates a non-zero error value on
                failure, and returns 0 on success.
            </span>
        </span>
    </p>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp8017488"></a>Parameters</h3>
            </div>
          </div>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h4 class="title"><a id="idp8016840"></a>tablesize</h4>
              </div>
            </div>
          </div>
          <p>
                  The <span class="bold"><strong>tablesize</strong></span> parameter provides the
                  size of the lock object hash table to be configured in the 
                  Berkeley DB environment.
             </p>
        </div>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp7999664"></a>Errors</h3>
            </div>
          </div>
        </div>
        <p>
             The <code class="methodname">DbEnv::set_lk_tablesize()</code> <span>
            
            <span>
                method may fail and throw a <a class="link" href="dbexception.html" title="Chapter 6. The DbException Class">DbException</a> 
                exception, encapsulating one of the following non-zero errors, or return one
                of the following non-zero errors:
            </span>
        </span>
        </p>
        <div class="sect3" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h4 class="title"><a id="idp8026896"></a>EINVAL</h4>
              </div>
            </div>
          </div>
          <p>
                If the method was called after <a class="xref" href="envopen.html" title="DbEnv::open()">DbEnv::open()</a> 
                was called; or if an invalid flag value or parameter was specified.
            </p>
        </div>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp8028224"></a>Class</h3>
            </div>
          </div>
        </div>
        <p>
            <a class="link" href="env.html" title="Chapter 5.  The DbEnv Handle">DbEnv</a>, 
            <a class="link" href="lock.html" title="Chapter 7.  The DbLock Handle">DbLock</a> 
        </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp8019216"></a>See Also</h3>
            </div>
          </div>
        </div>
        <p>
             <a class="xref" href="lock.html#locklist" title="Locking Subsystem and Related Methods">Locking Subsystem and Related Methods</a> 
        </p>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="envset_lk_priority.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="lock.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="lockdetect.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">DbEnv::set_lk_priority() </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> DbEnv::lock_detect()</td>
        </tr>
      </table>
    </div>
  </body>
</html>
